<template>
    <div class="wrapper">
		
		<!-- header部分 -->
		<header>
			<p>地址管理</p>
		</header>
			
		<!-- 地址列表部分 -->
		<ul class="addresslist">
			<li v-for="item in listDeliveryAddress">
				<div class="addresslist-left" @click="setDeliveryAddress(item)">
					<h3>{{item.contactName}} {{item.contactSex|sexFilter}} {{item.contactTel}}</h3>
					<p>{{item.address}}</p>
				</div>
				<div class="addresslist-right">
					<i class="fa fa-edit" @click="toUpdateUserAddress(item.daId)"></i>
					<i class="fa fa-remove" @click="deleteDeliveryAddress(item)"></i>
				</div>
			</li>
		</ul>
			
		<!-- 新增地址部分 -->
		<div class="addbtn" @click="toAddDeliveryAddress">
			<i class="fa fa-plus-circle"></i>
			<p>新增收货地址</p>
		</div>
			
		<!-- 底部菜单部分 -->
        <Footer></Footer>
	</div>
</template>



<script>
import Footer from '../components/Footer'
export default {
    name:'UserAddress',
    data(){
        return {
            businessId:this.$route.query.businessId,
            user:{},
            listDeliveryAddress:[],
        }
    },
    //生命周期函数
    created(){
        this.user = this.$getSessionStorage('user');
        this.listDeliveryAddressByUserId();
    },

    components:{
        Footer
    },

    filters:{
        sexFilter(value){
            return value==1?'先生':'女士';
        }
    },

    methods:{
        listDeliveryAddressByUserId(){
            //查询送货地址
            this.$axios.post('DeliveryAddressController/listDeliveryAddressByUserId',this.$qs.stringify({
                userId:this.user.userId
            })).then(response=>{
                console.log(response.data);
                this.listDeliveryAddress = response.data;
            }).catch(error=>{
                console.log(error)
            })
        },
        setDeliveryAddress(deliveryAddress) {
            //将用户选择的默认地址保存到LocalStorage
            this.$setLocalStorage(this.user.userId,deliveryAddress)
            //路由跳转到(Orders.vue)
            this.$router.push({path:'/orders',query:{businessId:this.businessId}})
        },

		toUpdateUserAddress(daId){
			this.$router.push({path:'/updateUserAddress',query:{daId:daId}});
		},

		deleteDeliveryAddress(deliveryAddress){
			this.$axios.post('DeliveryAddressController/deleteDeliveryAddressById',this.$qs.stringify({
                daId:deliveryAddress.daId
            })).then(response=>{
				//成功删除返回 1
				if(response.data==1){
					this.listDeliveryAddressByUserId().sort();
					console.log(response.data);
				}else{
				alert('删除失败！');
				}
            }).catch(error=>{
                console.log(error)
			})	

		},

        toAddDeliveryAddress(){
            this.$router.push({path:'/addUserAddress',query:{businessId:this.businessId}});
		}

    }


}

</script>



<style scoped>
    /*************** 总容器 ***************/
.wrapper{
	width: 100%;
	height: 100%;
	background-color: #F5F5F5;
}
/*************** header ***************/
.wrapper header{
	width: 100%;
	height: 12vw; 
	background-color: #0097FF;
	display: flex;
	justify-content: space-around;
	align-items: center;
	color: #fff;
	font-size: 4.8vw;
	position: fixed;
	left: 0;
	top: 0;
	/*保证在最上层*/
	z-index: 1000; 
}

/*************** addresslist ***************/
.wrapper .addresslist{
	width: 100%;
	margin-top: 12vw;
	background-color: #fff;
}
.wrapper .addresslist li{
	width: 100%;
	box-sizing: border-box;
	border-bottom: solid 1px #DDD;
	padding: 3vw;
	
	display: flex;
}
.wrapper .addresslist li .addresslist-left{
	flex:5;
	/*左边这块区域是可以点击的*/
	user-select: none;
	cursor: pointer;
}
.wrapper .addresslist li .addresslist-left h3{
	font-size: 4.6vw;
	font-weight: 300;
	color: #666;
}
.wrapper .addresslist li .addresslist-left p{
	font-size: 4vw;
	color: #666;
}
.wrapper .addresslist li .addresslist-right{
	flex:1;
	font-size: 5.6vw;
	color: #999;
	cursor: pointer;
	
	display: flex;
	justify-content: space-around;
	align-items: center;
}
/*************** 新增地址部分 ***************/
.wrapper .addbtn{
	width: 100%;
	height: 14vw;
	border-top: solid 1px #DDD;
	border-bottom: solid 1px #DDD;
	background-color: #fff;
	margin-top: 4vw;
	
	display: flex;
	justify-content: center;
	align-items: center;
	
	font-size: 4.5vw;
	color: #0097FF;
	user-select: none;
	cursor: pointer;
}
.wrapper .addbtn p{
	margin-left: 2vw;
}
/*************** footer ***************/
.wrapper .footer{
	width: 100%;
	height: 14vw;
	border-top: solid 1px #DDD;
	position: fixed;
	left: 0;
	bottom: 0;
	/*保证在最上层*/
	z-index: 1000; 
	background-color: #fff;
	
	display: flex;
	justify-content: space-around;
	align-items: center;
}
.wrapper .footer li{
	/*li本身的尺寸完全由内容撑起*/
	user-select: none;
	cursor: pointer;
	color: #999;
	
	/*主轴方向设为column，然后每个子元素才能垂直水平都居中*/
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.wrapper .footer li i{
	font-size: 5vw;
}
.wrapper .footer li p{
	font-size: 2.8vw;
}

</style>